YS電子工作ラボ
第90回PICクラブ 情報交換会 (開催日 2023.07.29)
<紹介作品

PIC32MZ による
   50音順タッチパネル式 和文モールス信号発生器
以下、 第90回PIC情報交換会報告(後閑さん、FaceBook Picfun.club.より) 
  ■  講評 …… 後閑さん
  50音順モールスキーボード  斎藤さん
 モールス信号の生成を、グラフィック液晶にカナ文字の一覧を表示し、タッチスイッチで文字を指定してモールス符号として出力するという製作例の紹介でした。PIC32MZの基板でパラレル接続のグラフィック液晶を駆動していました。プログラムはHarmonyとGraphic Comboを使って製作したとのこと。
以下、紹介に際し使用した資料
2023.07.29 PIC情報交換会資料 
YS電子工作デザイン http://www.ys-labo.com/  斎藤
YS電子工作ショップ http://ys-labo.shop-pro.jp/
1.  概要
1-1 要約
・ PIC32MZを使用して、カタカナ50音順のタッチパネルにより、和文モールス信号を出力する信号発生器
・ グラフィック液晶: INT035(3.5"、320 x 240pixel、グラフィック:EBIインターフェース、タッチ:SPIインターフェース)
・ グラフィック制御: Harmony Ver.3のグラフィクライブラリLegatoを使用、Graphics Composerでキーパッドウィジェットなどにより画面を作成

・ 和文モールス符号: 電波法に基ずく、「無線局運用規則第十二条 別表第一号 モールス符号」
  尚、PCのキーボードからの打鍵により、国際電気通信連合(ITU)が無線通信規則(ITU-R M.1677-1 (10/2009))で規定する欧文符号モール符号 及び記号についてもモールス信号を発生可能。
・ モール信号出力
  1. フォトカップラで絶縁されている ソリッド出力
  2. 変調周波数800Hzのモニタ音
  3. モニターLED点滅
・ 文字送信速度(PARIS方式): 可変、可変範囲 --> 25cpm ~ 180cpm
・ キャラクタ液晶表示: 打鍵文字、打鍵履歴(スクロールする16文字x2行表示)
・ Tera Term 表示: 打鍵済み未出力文字(キューバッファ)、打鍵履歴(スクロールする16文字x2行表示)

1-2 システム構成


1-3  動画で使用の電文
   ニイタカヤマノホ〝レ
   
2. 外観 
 
3.  回路図(→PDFファイル) 
4. 開発環境
 ・ Harmony v.3 MHC v3.8.0   コンパイラ XC32 v3.01  Legatoグラフィックライブラリ
 ・ PIC: PIC32MZ2048EFH100
5.動作結果 (→ 動画:1080pのHD動画を見ることができます。)
  5.1 電文送信
    
電文 ……  ニイタカヤマノホ〝レ

       
記: 帝国海軍 昭和16年12月 暗号
            ハワイ真珠湾攻撃命令

    
文字送信速度: 60cpm(PARIS方式、短点の時間:100msec)  
① 上部: モールス信号波形(1sec/div)
    計測器: Analogue Discovery 2
          WaveForms
② 左部: Tera Term
       Line1、Line2: 入力文字列履歴表示
       Qバッファの内容表示
③ 中央部 50音順タッチパネル  
①左中央部: キャラクタ液晶16文字 x 2行
         入力文字列履歴表示

②中央部: 50音順タッチパネル  
        


Tera Term ログ


  5.2.  1文字毎の送信例
    ア、イ、ウ、エ、オ 
 イ  ウ
 エ  オ  
 
   
    Tera Term ログ






6. 設計参考
 6.3 プログラム 
   ・ Project Graph、グラフィックコンポーザ(Graphics Composer)
   ・ グラフィックでのカタカナ、漢字使用でエンコーディングは ユニコード + UTF8 を使用
            (→ CJK漢字フォントファイル:NotoSansCJKjp-Bold.otf 16Mバイト)
   
 
    ・ プロジェクト全体のエンコーディングは Shift-JIS
      ソースコードでは、半角カタカナ 及びANKコードを使用  → Tera Termでのカタカナ表示


   
   ・ プログラムの全体構成
      各ループの関係、タイマの使い方、USB接続確立安定化
   ・ モールス信号のつくり方
        PWM変調、各文字のモールス符号の文字列可、文字列の判読
   ・ キューバッファによる"打鍵済みで送信待ちの文字”の一時保存

app.c app.h tasks.c le_gen_screen_Screen0.c
 
7. 参考
 ・ YS電子工作ラボHP での紹介/プロジェクトファイル  →  URL
 
8. 備考
  ・ JA1CPY